یکشنبه ۱۶ اردیبهشت ۰۳

هوش مصنوعی

مجله به روز مهندسی و تکنولوژی

یادگیری ماشین و الگوریتم های آن

۲۴۴ بازديد
یادگیری ماشین یکی از مهم ترین الگوریتم های هوش مصنوعی است
یکی از حوزه های تکنولوژی که نقشی قابل توجه در بهبود سرویس های ارائه شده در تلفن های همراه و فضای مجازی دارد، یادگیری ماشینی است.
یادگیری ماشین(Machine learning) موضوع داغی است که اخیرا با نام های بزرگی چون گوگل و فیس بوک ساخته شده و با الگوریتم های بسیار پیچیده ای که بعضی اوقات مانند داستان های علمی تخیلی به نظر می رسند پیوند خورده است.

روش‌های یادگیری ماشین (Machine Learning)، سیستم‌های مختلف را قادر می‌کنند که یاد بگیرند، بررسی کنند و به ما پیشنهادهای کاربردی ارائه دهند. این سیستم‌ها به مرور زمان که با داده‌ها، شبکه‌ها و افراد تعامل دارند، باهوش‌تر می‌شوند. با استفاده از رویکردهای یادگیری ماشین و هوش مصنوعی، این سیستم‌ها قادر هستند ما را در حل مسائل مهم، کاربردی و روزمره یاری دهند. غالبا این کار با استفاده از داده‌هایی انجام می‌شود که به دلیل حجم زیاد و یا ماهیت نامفهوم، برای ما انسان‌ها چندان قابل استفاده نیست.

تاکنون کاربردهای بسیار زیادی از هوش مصنوعی و یادگیری ماشین را در زندگی روزمره تجربه کرده‌ایم. سرویس‌های ایمیل برای تشخیص اسپم از الگوریتم‌های یادگیری ماشین استفاده می‌کنند. سیستم‌های پیشنهادگر، مرتب‌سازی نتایج موتورهای جستجو، تشخیص چهره خندان برای عکاسی خودکار، همگی نمونه‌های دیگری از کاربردهای یادگیری ماشین هستند.

ابزارها و روش‌های مبتنی بر یادگیری ماشین، بر خلاف سایر ابداعات و اختراعات بشر، برای رفع محدودیت‌ها و نیازهای فیزیکی نیستند، بلکه هدف آن‌ها  ساختن سیستم‌هایی است که به جای انسان بیاندیشند، یاد بگیرند و یاد بدهند.

در طی یک دهه آینده، به نظر می‌رسد که ما شاهد استفاده هر چه بیشتر یادگیری ماشین در طراحی سیستم‌های دارای تعامل با انسان خواهیم بود.

یادگیری ماشین چیست؟

این شاخه به این معنا است که ماشین بتواند برنامه، ساختار یا داده‌‏هایش را بر اساس ورودی‏‌ها یا در پاسخ به اطلاعات خارجی، به نحوی تغییر دهد که رفتارش به آن چه از او انتظار می‌‏رود نزدیک‏‌تر شود، به عبارت دیگر می‌توان گفت یعنی قدرت تجزیه تحلیل داشته باشد.

یادگیری ماشین سالهاست که توسط شرکت‌های بزرگ در ابعاد کوچک استفاده می‌شود. مثلا آمازون با رصد کلیک‌ها و علاقه‌مندی‌های افراد سعی در یافتن سلیقه‌های فرد کرده و تبلیغاتی متناسب با آن برای وی نشان می‌دهد، گوگل در زمینه جستجوهای اینترنتی و فیسبوک در زمینه شبکه‌های اجتماعی اقدام مشابه را انجام می‌دهد و پست‌های مورد علاقه افراد را  برایشان به نمایش در می‌آورد.

در این نوشتار قصد داریم به معرفی چند الگوریتم هوش مصنوعی بپردازیم که در زمینه یادگیری ماشین نیز بسیار پرطرفدار هستند.

طبقه بندی مشکلات یادگیری ماشین

سه طبقه بندی اصلی از وظایف یادگیری ماشین وجود دارد:

  • یادگیری تحت نظارت: مدل با استفاده از یک مجموعه شناخته شده “داده های آموزشی” ساخته شده است که شامل تمام ویژگی ها و همچنین مقادیر شناخته شده (“برچسب ها”) خروجی است که ما در حال تلاش برای مدل سازی آن هستیم. هدف از تکنیک های یادگیری تحت نظارت، رسیدن به یک مدل است که ویژگی های ورودی را برحسب برچسب ها نشان می دهد.
  • یادگیری بدون نظارت: خروجی این الگوریتم یادگیری،  برچسب ها  نیستند؛ هدف این روش کشف ساختار ناشناخته مانند خوشه ها clutsters و یا الگوهای دیگر است.
  • یادگیری تقویتی: الگوریتم پاداش و مجازات را بر اساس موفقیت آن در دستیابی به یک هدف خاص به ارمغان می آورد – به عنوان مثال، یک الگوریتم Go برای تغییرات در یک مدل که باعث افزایش نسبت زمان برنده شدن مدل و مجازات برای تغییراتی که قصد کاهش آن را دارد.این  الگوریتم قصد دارد پاداش را به حداکثر و مجازات را به حداقل برساند.

وظایف همچنین می تواند بر اساس خروجی مورد نظر از مدل یادگیری  طبقه بندی شود. سه تار از رایج ترین ها عبارتند از:

طبقه بندی: داده ها به دو یا چند کلاس یا “برچسب ها” تقسیم می شوند (مثلا “hotdog” در مقابل “not hotdog “) و هدف عمل یادگیری این است که یک مدل تولید کند که ورودی ها را به یکی یا بیشتر از این برچسبها اختصاص دهد.

رگرسیون: خروجی یک  عدد پیوسته (به عنوان مثال قیمت کالای خاص، تولید یک چاه نفت ثابت شده) به جای طبقه بندی گسسته است، و  همچنین فراهم سازی مدل و برآورد خروجی هدف.

خوشه بندی: آنالوگ بدون نظارت برای طبقه بندی؛ ورودی ها باید به گروه ها تقسیم شوند، اما قبل از ساخت مدل، گروه ها شناخته نمی شوند.مثال کاربرد: پیش بینی قیمت خانه

می‌توان گفت یادگیری تقویتی مانند یادگیری مبتنی بر آزمون و خطای انسان است. یادگیری تقویتی برای ایجاد استراتژی‌ها کاربرد دارد. کاربرد یادگیری تقویتی در آموزش بازی‌ها به رایانه‌ها است. برای نمونه می‌توان شرکت DeepMind را نام برد که در سال ۲۰۱۴ توسط گوگل خریداری شد. این شرکت تلاش می‌کند تا به الگوریتم خود، بازی قدیمی و معروف آتاری (Atari) را آموزش دهد. آلفاگو (AlphaGo) سامانه هوش مصنوعی که توسط گروه DeepMind گوگل برای انجام بازی Go طراحی شده توانست قهرمان جهانی این بازی را شکست دهد.

شبکه عصبی مصنوعی چیست؟

۲۵۹ بازديد
امروزه با پیشرفت علم استفاده از هوش مصنوعی و به طبع آن شبکه عصبی را در قسمت‌‌های مختلف زندگی‌ شاهد هستیم، مثلاً گوگل می گوید از  یادگیری ماشین برای تهیه لیست پیشنهادی از آهنگ‌ها استفاده می‌کند و اپلیکیشنTodoist نیز از هوش مصنوعی برای تعیین زمان اتمام کارهایتان بهره می‌گیرد. حال در نظر داریم شبکه‌های عصبیکه یکی از مهمترین کاربرد های هوش مصنوعی است را بررسی کنیم.

 

شبکه عصبی مصنوعی به زبان ساده

یک شبکه عصبی مصنوعی (Artificial Neural Network – ANN) ایده ای برای پردازش اطلاعات است که از سیستم عصبی زیستی الهام گرفته و مانند مغز به پردازش اطلاعات می‌پردازد. عنصر کلیدی این ایده، ساختار جدید سیستم پردازش اطلاعات است. این سیستم از شمار زیادی عناصر پردازشی فوق العاده بهم پیوسته به نام نورون‌ها (neurons)تشکیل شده که برای حل یک مسئله با هم هماهنگ عمل می‌کنند.

شبکه‌های عصبی مصنوعی نیز مانند انسان‌ها با مثال یاد می گیرند و یک شبکه عصبی برای انجام وظیفه‌های مشخص مانند شناسایی الگوها و دسته بندی اطلاعات، در طول یک پروسه یاد گیری تنظیم می‌شود. در سیستم‌های زیستی، یاد گیری با تنظیماتی در اتصالات سیناپسی که بین اعصاب قرار دارد همراه است. از این روش در شبکه‌های عصبی نیز استفاده می‌شود.

بینایی ماشین، علم پردازش تصاویر

۲۶۳ بازديد
امروزه با پیشرفت تکنولوژی شاهد پیشرفت علم در هر شاخه‌ای هستیم. ولی چیزی که مشهود است استفاده حداکثری از کامپیوتر‌ها در هرکدام از این زمینه‌ها برای افزایش کاربری و کم کردن نیرو و خطای انسانی در جهت راحتی و رفاه انسان‌ها است. اما کامپیوترها برای هوشمندی و کاربرد بیشتر نیاز به ابزاری مانند: هوش مصنوعی،بینایی ماشین و غیره دارند که انسان‌ها این ابزار را برای کامپیوترها فراهم می‌کنند.

بینایی ماشین چیست؟


بینایی ماشین 
شاخه ای از دانش است که سعی دارد از طریق پردازش تصاویر دوبعدی، جهان سه بعدی پیرامون را بازسازی و تفسیر کند. به بیان ساده، بینایی ماشین یعنی اینکه کامپیوترها بتوانند جهان را به کمک دوربین‌ها ببینند، بفهمند و حتی از بینایی انسان پیشی بگیرند.

بینایی ماشین می‌تواند در هر جایی که نیاز است تا ماشین به جای انسان ببیند، مورد استفاده قرار گیرد.

بینایی ماشین را از دو منظر علمی و تکنولوژیکی می‌توان بررسی کرد. به عنوان یک رشته علمی، بینایی ماشین به توسعه تئوری سیستم‌های هوشمندی می‌پردازد که اطلاعات را از تصاویر استخراج می‌کنند و به عنوان یک رشته تکنولوژیکی (فناورانه) تلاش دارد که از تئوری‌ها و مدل‌های توسعه داده شده برای ساخت سیستم‌های بینایی ماشین بهره برداری کند. به عنوان مثال تولیدکنندگان صنایع مختلف سیستم‌های بینایی ماشین را برای بازرسی چشمی که نیاز به سرعت بالا، بزرگ نمایی، عملکرد ۲۴ ساعته و تکرارپذیری دارد استفاده می‌کنند.

اهداف و کاربردها‌ی هوش مصنوعی

۲۲۹ بازديد
هوش مصنوعی دانش ساخت ماشین‌ها یا برنامه‌های هوشمند است. امروزه با پیشرفت روز افزون تکنولوژی،‌ شرکت‌های بزرگ دنیای فناوری تمرکز خود را به پیشرفت هوش مصنوعی معطوف کرده‌اند تا به این طریق نیروی انسانی را در بسیاری از کارها کاهش دهند. ما در  مقاله‌ای در مورد چیستی و مفهوم هوش مصنوعی به تشریح  پرداختیم و زبان‎های برنامه‌نویسی و کاربردهای هوش مصنوعی را نام بردیم. با توجه به اهمیت این موضوع علمی بر آن شدیم که به توضیح در مورد هدف و هر یک از کاربرد‌های هوش مصنوعی بپردازیم.

اهداف هوش مصنوعی

می‌توان گفت هدف هوش مصنوعی نزدیک نمودن رفتار و پاسخ یک سیستم کامپیوتری به الگوریتم‌هایی است که انسان براساس آن ها رفتار می کند و پاسخ می‌دهد. گاه سیستم‌هایی طراحی می شوند که قدرت تجزیه و تحلیل آن ها از انسان بیشتر است. ولی باز از الگوهای ما استفاده می کنند.

از اهداف متخصصین در این حوزه، تولید ماشین‌هایی است که دارای احساسات بوده و دست کم نسبت به وجود خود و احساسات خود آگاه باشند. این ماشین باید توانایی تعمیم تجربیات قدیمی خود در شرایط مشابه جدید را داشته و به این ترتیب اقدام به گسترش دامنه دانش و تجربیاتش کند. به عبارت ساده تر می‌توان گفت: “هدف هوش مصنوعی این است که ماشین‌ها و ربات‌هایی بسازد را که نسبت به ماشین های قبلی، قابلیت های بیشتری داشته باشد و با هوش‌تر عمل کنند و همچنین به ماشین‌هایی که در حال حاضر موجود است، قابلیت های و توانایی‌های انسانی بدهد.”

هوش مصنوعی، علمی برای پیشرفت انسان

۲۳۳ بازديد
امروزه با توجه به پیشرفت علم و فناوری  می‌توان مشاهده کرد که انسان به دنبال این است تا استفاده از نیروی خود را در بسیاری از کارها کاهش دهد، به همین دلیل روی به ساخت و استفاده از ابزاری دیگر آورده‌است که یکی از این ابزارها هوش مصنوعی است.هوش مصنوعی در زندگی روزمره ما استفاده بسیاری دارد، این موضوع را می‌توان در گوشی‌های هوشمند، ماشین‌های خودران، خانه‌های هوشمند، شبکه های اجتماعی و بسیاری از رشته‌ها مانند پزشکی و … مشاهده کرد.

هوش مصنوعی واژه‌ای است که شاید برای عموم آشنا نباشد و بسیاری از افراد وقتی با رشته هوش مصنوعی مواجه می‌شوند آن را  جزء پزشکی می‌دانند! خیلی از افراد هم با شنیدن این واژه به یاد روباتیک می افتند و فکرمیکنند که این رشته به روباتیک محدود میشود، گرچه بخش نرم افزاری روبات و کنترل آن بی ارتباط با هوش مصنوعی نیست و روباتیک یکی از کاربردهای آن محسوب می‌شود، اما هوش مصنوعی بسیار فراتر از آن است.

طبق تعریفی که تورینگ انجام داده است : اگر شما پشت یک ترمینال بشینید و با دو نفر چت کنید و متوجه نشوید که کدام یک از آنها انسان است و کدامیک کامپیوتر، آنگاه انسان موفق به ساخت هوش مصنوعی شده است. در ادامه با خط مهندسی همراه باشید، تا با هم گشت و گذاری در این هوش ماشینی داشته‌باشیم. 

هوش مصنوعی، علمی نو

هوش مصنوعی به خودی خود علمی کاملا جوان است. در واقع بسیاری شروع هوش مصنوعی را ۱۹۵۰ می‌ دانند زمانی که آلن تورینگ مقاله خود را در باب چگونگی ساخت ماشین هوشمند نوشت (آنچه بعدها به تست تورینگ مشهور شد) تورینگ درآن مقاله یک روش را برای تشخیص هوشمندی پیشنهاد می‌کرد. این روش بیشتر به یک بازی شبیه بود.

فرض کنید شما در یک سمت یک دیوار (پرده یا هر مانع دیگر) هستید و به صورت تله تایپ با آن سوی دیوار ارتباط دارید و  شخصی از آن سوی دیوار از این طریق با شما در تماس است. طبیعتاً یک مکالمه بین شما و شخص آن سوی دیوار می‌تواند صورت پذیرد. حال اگر پس از پایان این مکالمه، به شما گفته شود که آن سوی دیوار نه یک شخص بلکه (شما کاملاً از هویت شخص آن سوی دیوار بی‌خبرید) یک ماشین بوده که پاسخ شما را می‌داده، آن ماشین یک ماشین هوشمند خواهد بود، در غیر این صورت(یعنی در صورتی که شما در وسط مکالمه به مصنوعی بودن پاسخ پی ببرید) ماشین آن سوی دیوار هوشمند نیست و موفق به گذراندن تست تورینگ نشده است. باید دقت کرد که تورینگ به دو دلیل کاملا مهم این نوع از ارتباط(ارتباط متنی به جای صوت) را انتخاب کرد. اول این که موضوع ادراکی صوت را کاملاً از صورت مساله حذف کند و این تست هوشمندی را درگیر مباحث مربوط به دریافت و پردازش صوت نکند و دوم این که بر جهت دیگری هوش مصنوعی به سمت نوعی از پردازش زبان طبیعی تاکید کند.